|
К пункту 1 (работа с переключателем и текстовым полем):
- В окне Project Explorer два раза щелкните мышью по объекту формы UF1. Затем в ToolBox щелкните по объекту Label и отведите место этому элементу управления в верхней части формы. Щелкните правой кнопкой мыши по созданному элементу управления Label1 и в контекстном меню выберите Properties. Измените значение свойства Caption на "За что:" и при помощи свойства Font подберите подходящий шрифт и его размер.
- В ToolBox щелкните по элементу управления OptionButton и отведите на форме место этому элементу управления. Повторите эту операцию еще два раза.
- Откройте свойства первого переключателя. Измените значение свойства (Name) на optOsvoenie, а значение свойства Caption - на "освоение новых информационных технологий". Для второго переключателя поменяйте значение свойства (Name) на optVnedrenie и свойство Caption - на "внедрение новых программных продуктов", для третьего - на optDrugoe и "другое:" соответственно.
- В ToolBox щелкните по элементу управления TextBox и поместите его в нужное место формы. Установите для свойства (Name) этого элемента управления значение txtDrugoe.
- Щелкните правой кнопкой мыши по пустому месту на форме и в контекстном меню выберите View Code. Выберите событие Initialize для UserForm и введите для него следующий код:
optOsvoenie.Value = True
txtDrugoe.Visible = False
- Для события Change переключателя optDrugoe введите следующий код:
If optDrugoe.Value = True Then
txtDrugoe.Visible = True
Else
txtDrugoe.Visible = False
End If
- Перейдите к коду события Click для CommandButton1 и вместо строки
sPovod = "освоении новых информационных технологий"
введите следующий код:
If optOsvoenie . Value = True Then sPovod = "освоении новых информационных технологий"
If optVnedrenie . Value = True Then sPovod = "внедрении новых программных продуктов"
If optDrugoe.Value = True Then sPovod = txtDrugoe.Value
- Запустите форму на выполнение, напечатайте приказ и убедитесь, что все работает согласно поставленным условиям.
К пункту 2 (работа с комбинированным списком):
- Разместите на форме еще один элемент управления Label с надписью "Кого: " и настройте для него шрифт;
- Щелкните в Toolbox по элементу управления ComboBox и выделите для него место на диске. Присвойте созданному элементу управления ComboBox имя cbFIO.
- Откройте код для события Initialize нашей формы UserForm и дополните его следующими строками:
Dim oColumn As Range
Dim oCell As Range
Set oColumn = Columns("A")
For Each oCell In oColumn.Cells
If oCell.Value <> "" Then
cbFIO.AddItem oCell.Value
End If
Next
cbFIO . Value = "Иванова Ивана Ивановича"
- Перейдите к коду события Click для CommandButton1 и вместо строки
sFio = "Иванова Ивана Ивановича"
введите следующий код:
sFio = cbFIO.Value
- Запустите форму на выполнение и убедитесь, что все работает нормально.
К пункту 3 (работа с флажками):
- При помощи ToolBox поместите на форму два элемента управления CheckBox. Для первого присвойте свойству (Name) значение chPremia и для свойства Caption - значение "Премия", для второго - chGramota и значение "Почетная грамота" соответственно.
- Откройте код для события Initialize нашей формы UserForm и дополните его следующими строками:
chPremia.Value = True
chGramota.Value = True
- Перейдите к коду события Click для CommandButton1 и вместо строк
bFlagPremia = True
bFlagGramota = True
введите следующий код:
bFlagPremia = chPremia.Value
bFlagGramota = chGramota.Value
If bFlagPremia = False And bFlagGramota = False Then
MsgBox "Не выбрана ни премия, ни почетная грамота!"
Exit Sub
End If
- Запустите форму на выполнение и убедитесь, что все работает нормально.
К пункту 4 (применение полосы прокрутки и дублирующего текстового поля):
- Поместите на форму еще один элемент управления Label с надписью "Сумма премии:". Присвойте его свойству Name значение lblSum.
- Поместите рядом еще одно текстовое поле и присвойте его свойству (Name) значение txtSum.
- Разместите рядом элемент управления ScrollBar и присвойте следующие значения его свойствам:
- (Name) - значение sbSum;
- Min - значение 0;
- Max - значение 100000;
- SmallChange - значение 100.
- Для события Change элемента управления sbSum введите следующий код:
txtSum.Value = sbSum.Value
- Для события Change элемента управления txtSum введите следующий код:
sbSum.Value = CInt(txtSum.Value)
Примечание.
Такой код является потенциально опасным, поскольку не проверяется вводимое пользователем в текстовом поле значение. Если это значение будет невозможно преобразовать в числовое или оно окажется больше 100000, то возникнет ошибка времени выполнения. Как работать предупреждать появление ошибок и перехватывать их, будет рассмотрено в следующих модулях.
Для события Initialize нашей формы UserForm добавьте следующий код:
sbSum.Value = 100
txtSum.Value = 100
Для события Change элемента управления chPremia добавьте следующий код:
If chPremia.Value = False Then
lblSum.Visible = False
txtSum.Visible = False
sbSum.Visible = False
Else
lblSum.Visible = True
txtSum.Visible = True
sbSum.Visible = True
End If
Для кода Click кнопки CommandButton1 вместо кода
nSummaPremii = 100000
впишите код
nSummaPremii = sbSum.Value
К пункту 5 (применение кнопки):
- Разместите на поле еще одну кнопку и настройте значения ее свойств следующим образом:
- (Name) - значение "btnEscape";
- Caption - значение "Отмена";
- Cancel - значение True.
- Для события Click этой кнопки поместите код
Unload Me
К пункту 6 (изменение заголовка формы):
- Щелкните правой кнопкой мыши по пустому месту на форме и в контекстном меню выберите Properties.
- Для свойства Caption настройте значение "Формирование приказа о выплате премии".
|